package ${packageName}.model.vo;

import ${packageName}.model.entity.*;
import lombok.*;
import org.springframework.beans.BeanUtils;
import java.util.*;

/**
* Copyright (c) 2018-2025, chris All rights reserved.
* <p>
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* <p>
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* <p>
* Author: ${author}
* <p>
* Date: ${time}
* ${description}
**/
@Setter
@Getter
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class ${name}VO {
<#list fields as field>

    /**
     * ${field.remark}
    */
    private ${field.typeName} ${field.name};
</#list>
    public static ${name}VO from(${name} ${lowerName}) {
        if (${lowerName} == null) {
            return null;
        }
        ${name}VO vo = new ${name}VO();
        BeanUtils.copyProperties(${lowerName}, vo);
        return vo;
    }
}
